/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package manager;

import java.util.ArrayList;



/*
 * 
 * mediaManager
 * Matthieu PERRIN
 * Gestion de la liste des fournisseur par media
 * 
 */
public class mediaManager {
    
    private ArrayList<Media> ListeMedia = new ArrayList<Media>();
    String ip_serveur = "127.0.0.1";
    
    public mediaManager(String IP_manager)
    {
        ip_serveur = IP_manager;
    }
    
    // Retourne l'IP d'un fournisseur
    public String getProvider(String ID)
    {
        
        for ( int i=0; i<ListeMedia.size(); i++)
        {
            if (ListeMedia.get(i).getID().equals(ID))
            {
                String ipp = ListeMedia.get(i).getProvider();
                if ( ipp != null ) return ipp;
                else return ip_serveur;
            }
        }
        
        // Sinon le media n'existe pas
        //ListeMedia.add(new Media(ID, ""));
        
        return ip_serveur;
    }
    
    // Ajoute l'IP d'un fournisseur
    public void setProvider(String ID, String IP)
    {
        boolean media_existe = false;
        
        
        for ( int i=0; i<ListeMedia.size(); i++)
        {
            if (ListeMedia.get(i).getID().equals(ID))
            {
                media_existe = true;
                 //ListeMedia.get(i).AddProvider(IP);
                 Media m = ListeMedia.get(i);
                 m.AddProvider(IP);
                 ListeMedia.set(i, m);
            }
        }
        
        if ( !media_existe )
        {
            Media m = new Media(ID, "");
            m.AddProvider(IP);
            ListeMedia.add(m);
            
        }
        
    }
    
    // Supprime l'IP d'un fournisseur
    public void DelProvider(String ID, String IP)
    {
        
        for ( int i=0; i<ListeMedia.size(); i++)
        {
            if (ListeMedia.get(i).getID().equals(ID))
            {
                 Media m = ListeMedia.get(i);
                 m.delProvider(IP);                
                 ListeMedia.set(i, m);
            }
        }
    }
    
}
